package com.zhiche.lisa.tms.dao.model;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 发运在途异常
 * </p>
 *
 * @author qichao
 * @since 2018-06-18
 */
@TableName("lisa_shipment_enroute_excepion")
public class ShipmentEnrouteExcepion extends Model<ShipmentEnrouteExcepion> {

    private static final long serialVersionUID = 1L;

	@TableId(value="id", type= IdType.AUTO)
	@JsonSerialize(using=ToStringSerializer.class)
	private Long id;
    /**
     * 装车单号
     */
	@TableField("shipment_code")
	private String shipmentCode;
    /**
     * 异常类型
     */
	@TableField("exception_type")
	private String exceptionType;
    /**
     * 异常描述
     */
	@TableField("exception_desc")
	private String exceptionDesc;
    /**
     * 上报人标识（应对非承运司机上报的情况）
     */
	@TableField("issuer_id")
	private String issuerId;
    /**
     * 创建时间
     */
	@TableField("gmt_create")
	private Date gmtCreate;

	/**
	 * 租户ID
	 */
	@TableField("tenant_id")
	private Long tenantId;

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getShipmentCode() {
		return shipmentCode;
	}

	public void setShipmentCode(String shipmentCode) {
		this.shipmentCode = shipmentCode;
	}

	public String getExceptionType() {
		return exceptionType;
	}

	public void setExceptionType(String exceptionType) {
		this.exceptionType = exceptionType;
	}

	public String getExceptionDesc() {
		return exceptionDesc;
	}

	public void setExceptionDesc(String exceptionDesc) {
		this.exceptionDesc = exceptionDesc;
	}

	public String getIssuerId() {
		return issuerId;
	}

	public void setIssuerId(String issuerId) {
		this.issuerId = issuerId;
	}

	public Date getGmtCreate() {
		return gmtCreate;
	}

	public void setGmtCreate(Date gmtCreate) {
		this.gmtCreate = gmtCreate;
	}

	@Override
	protected Serializable pkVal() {
		return this.id;
	}

	@Override
	public String toString() {
		return "ShipmentEnrouteExcepion{" +
			", id=" + id +
			", shipmentCode=" + shipmentCode +
			", exceptionType=" + exceptionType +
			", exceptionDesc=" + exceptionDesc +
			", issuerId=" + issuerId +
			", gmtCreate=" + gmtCreate +
			"}";
	}

	public Long getTenantId() {
		return tenantId;
	}

	public void setTenantId(Long tenantId) {
		this.tenantId = tenantId;
	}
}
